package com.dotnet.modules.city.controller;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

import com.dotnet.common.web.BaseController;
import com.dotnet.modules.city.entity.City;
import com.dotnet.modules.city.service.CityService;

/**
 * 
 * 描述：城市管理
 * 创建人： 魏泽超
 * 创建时间: 2016-8-17 上午9:38:16
 * @version
 */
@Controller
@RequestMapping("/city")
public class CityController extends BaseController {

	@Autowired
	private CityService cityService;

	/**
	 * 
	 * 描述：城市列表
	 * 创建人： 魏泽超
	 * 创建时间: 2016-8-17 上午9:50:32
	 * @version
	 */
	@RequestMapping("/cityList")
	public String cityList(ModelMap model) {
		List<City> list = cityService.queryAll(null);
		if (null != list && list.size() > 0) {
			model.put("cityList", list);
		}
		return "/city/list";
	}

	/**
	 * 
	 * 描述：去添加页面
	 * 创建人： 魏泽超
	 * 创建时间: 2016-8-17 上午9:57:16
	 * @version
	 */
	@RequestMapping("/toAdd")
	public String toAdd() {
		return "/city/form";
	}

	/**
	 * 
	 * 描述：添加城市
	 * 创建人： 魏泽超
	 * 创建时间: 2016-8-17 上午9:57:26
	 * @version
	 */
	@ResponseBody
	@RequestMapping("/add")
	public Map<String, Object> add(City city) {
		Map<String, Object> map = new HashMap<String, Object>();
		if (null != city) {
			city.setIsDelete(0);
			int i = cityService.add(city);
			if (i > 0) {
				map.put("status", true);
				map.put("msg", "添加成功");
			} else {
				map.put("status", false);
				map.put("msg", "添加失败");
			}
		}
		return map;
	}

	/**
	 * 
	 * 描述：删除
	 * 创建人： 魏泽超
	 * 创建时间: 2016-8-17 上午10:07:53
	 * @version
	 */
	@ResponseBody
	@RequestMapping("/delete")
	public Map<String, Object> delete(String type, int id) {
		Map<String, Object> map = new HashMap<String, Object>();
		City city = new City();
		city.setId(id);
		if ("1".equals(type)) {
			city.setIsDelete(1);
		} else {
			city.setIsDelete(0);
		}
		int i = cityService.updateByPrimaryKeySelective(city);
		if (i > 0) {
			map.put("status", true);
			map.put("msg", "删除成功");
		} else {
			map.put("status", false);
			map.put("msg", "删除失败");
		}
		return map;
	}

	/**
	 * 
	 * 描述：去更新页面
	 * 创建人： 魏泽超
	 * 创建时间: 2016-8-17 上午10:55:11
	 * @version
	 */
	@RequestMapping("/toUpdate")
	public String toUpdate(int id, ModelMap model) {
		City city = new City();
		city.setId(id);
		City queryOne = cityService.queryOne(city);
		if (null != queryOne) {
			model.put("city", queryOne);
		}
		return "/city/update";
	}

	/**
	 * 
	 * 描述：更新
	 * 创建人： 魏泽超
	 * 创建时间: 2016-8-17 上午10:55:03
	 * @version
	 */
	@ResponseBody
	@RequestMapping("/update")
	public Map<String, Object> update(City city) {
		Map<String, Object> map = new HashMap<String, Object>();
		int i = cityService.updateByPrimaryKeySelective(city);
		if (i > 0) {
			map.put("status", true);
			map.put("msg", "修改成功");
		} else {
			map.put("status", false);
			map.put("msg", "修改失败");
		}
		return map;
	}

}
